﻿using System;
namespace Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg {
    
    
    public partial class SooritaKanneV4 : global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritaKanneV4 {
        
        private string @__kandeParitolu;
        
        private string @__kandeId;
        
        private int @__ekandeLiik;
        
        private System.Boolean? @__onParanduskanne;
        
        private string @__eelmineLahendLegacy;
        
        private string @__eelminePaevikukandeId;
        
        private System.Boolean? @__onKiirmenetlus;
        
        private System.DateTime @__kandeKuupaev;
        
        private string @__esitajaNimi;
        
        private string @__esitajaKood;
        
        private string @__asutamisnumber;
        
        private global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneAmetitoimingV4 @__ametitoiming;
        
        private System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRiigiloivTypeV4> @__riigiloivud = new System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRiigiloivTypeV4>();
        
        private string @__markus;
        
        private string @__registriPiirkond;
        
        private System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneEttevotjadV4> @__ettevotjad = new System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneEttevotjadV4>();
        
        public SooritaKanneV4() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public SooritaKanneV4(
                    string @kandeParitolu, 
                    string @kandeId, 
                    int @ekandeLiik, 
                    System.Boolean? @onParanduskanne, 
                    string @eelmineLahendLegacy, 
                    string @eelminePaevikukandeId, 
                    System.Boolean? @onKiirmenetlus, 
                    System.DateTime @kandeKuupaev, 
                    string @esitajaNimi, 
                    string @esitajaKood, 
                    string @asutamisnumber, 
                    global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneAmetitoimingV4 @ametitoiming, 
                    System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRiigiloivTypeV4> @riigiloivud, 
                    string @markus, 
                    string @registriPiirkond, 
                    System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneEttevotjadV4> @ettevotjad) {
            this.@__kandeParitolu = @kandeParitolu;
            this.@__kandeId = @kandeId;
            this.@__ekandeLiik = @ekandeLiik;
            this.@__onParanduskanne = @onParanduskanne;
            this.@__eelmineLahendLegacy = @eelmineLahendLegacy;
            this.@__eelminePaevikukandeId = @eelminePaevikukandeId;
            this.@__onKiirmenetlus = @onKiirmenetlus;
            this.@__kandeKuupaev = @kandeKuupaev;
            this.@__esitajaNimi = @esitajaNimi;
            this.@__esitajaKood = @esitajaKood;
            this.@__asutamisnumber = @asutamisnumber;
            this.@__ametitoiming = @ametitoiming;
            this.@__riigiloivud = @riigiloivud;
            this.@__markus = @markus;
            this.@__registriPiirkond = @registriPiirkond;
            this.@__ettevotjad = @ettevotjad;
        }
        
        /// <summary>
        /// Required parameters
        /// </summary>
        public SooritaKanneV4(string @kandeParitolu, string @kandeId, int @ekandeLiik, System.DateTime @kandeKuupaev, System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneEttevotjadV4> @ettevotjad) {
            this.@__kandeParitolu = @kandeParitolu;
            this.@__kandeId = @kandeId;
            this.@__ekandeLiik = @ekandeLiik;
            this.@__kandeKuupaev = @kandeKuupaev;
            this.@__ettevotjad = @ettevotjad;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected SooritaKanneV4(ISooritaKanneV4 @sooritaKanneV4) {
            this.@__kandeParitolu = @sooritaKanneV4.KandeParitolu;
            this.@__kandeId = @sooritaKanneV4.KandeId;
            this.@__ekandeLiik = @sooritaKanneV4.EkandeLiik;
            this.@__onParanduskanne = @sooritaKanneV4.OnParanduskanne;
            this.@__eelmineLahendLegacy = @sooritaKanneV4.EelmineLahendLegacy;
            this.@__eelminePaevikukandeId = @sooritaKanneV4.EelminePaevikukandeId;
            this.@__onKiirmenetlus = @sooritaKanneV4.OnKiirmenetlus;
            this.@__kandeKuupaev = @sooritaKanneV4.KandeKuupaev;
            this.@__esitajaNimi = @sooritaKanneV4.EsitajaNimi;
            this.@__esitajaKood = @sooritaKanneV4.EsitajaKood;
            this.@__asutamisnumber = @sooritaKanneV4.Asutamisnumber;
            this.@__ametitoiming = @sooritaKanneV4.Ametitoiming;
            this.@__riigiloivud = @sooritaKanneV4.Riigiloivud;
            this.@__markus = @sooritaKanneV4.Markus;
            this.@__registriPiirkond = @sooritaKanneV4.RegistriPiirkond;
            this.@__ettevotjad = @sooritaKanneV4.Ettevotjad;
        }
        
        public virtual string KandeParitolu {
            get {
                return this.@__kandeParitolu;
            }
            set {
                this.@__kandeParitolu = value;
            }
        }
        
        public virtual string KandeId {
            get {
                return this.@__kandeId;
            }
            set {
                this.@__kandeId = value;
            }
        }
        
        public virtual int EkandeLiik {
            get {
                return this.@__ekandeLiik;
            }
            set {
                this.@__ekandeLiik = value;
            }
        }
        
        public virtual System.Boolean? OnParanduskanne {
            get {
                return this.@__onParanduskanne;
            }
            set {
                this.@__onParanduskanne = value;
            }
        }
        
        public virtual string EelmineLahendLegacy {
            get {
                return this.@__eelmineLahendLegacy;
            }
            set {
                this.@__eelmineLahendLegacy = value;
            }
        }
        
        public virtual string EelminePaevikukandeId {
            get {
                return this.@__eelminePaevikukandeId;
            }
            set {
                this.@__eelminePaevikukandeId = value;
            }
        }
        
        public virtual System.Boolean? OnKiirmenetlus {
            get {
                return this.@__onKiirmenetlus;
            }
            set {
                this.@__onKiirmenetlus = value;
            }
        }
        
        public virtual System.DateTime KandeKuupaev {
            get {
                return this.@__kandeKuupaev;
            }
            set {
                this.@__kandeKuupaev = value;
            }
        }
        
        public virtual string EsitajaNimi {
            get {
                return this.@__esitajaNimi;
            }
            set {
                this.@__esitajaNimi = value;
            }
        }
        
        public virtual string EsitajaKood {
            get {
                return this.@__esitajaKood;
            }
            set {
                this.@__esitajaKood = value;
            }
        }
        
        public virtual string Asutamisnumber {
            get {
                return this.@__asutamisnumber;
            }
            set {
                this.@__asutamisnumber = value;
            }
        }
        
        public virtual global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneAmetitoimingV4 Ametitoiming {
            get {
                return this.@__ametitoiming;
            }
            set {
                this.@__ametitoiming = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.IRiigiloivTypeV4> Riigiloivud {
            get {
                return this.@__riigiloivud;
            }
            set {
                this.@__riigiloivud = value;
            }
        }
        
        public virtual string Markus {
            get {
                return this.@__markus;
            }
            set {
                this.@__markus = value;
            }
        }
        
        public virtual string RegistriPiirkond {
            get {
                return this.@__registriPiirkond;
            }
            set {
                this.@__registriPiirkond = value;
            }
        }
        
        public virtual System.Collections.Generic.List<global::Producers.Arireg.Xtee.Riik.Ee.Producer.Arireg.ISooritakanneEttevotjadV4> Ettevotjad {
            get {
                return this.@__ettevotjad;
            }
            set {
                this.@__ettevotjad = value;
            }
        }
    }
}
